home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 11 / PC World Interactive 11.iso / share / multimed / effect / Common Files / QTUtilities.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-03-12  |  2.7 KB  |  82 lines

  1. //////////
  2. //
  3. //    File:        QTUtilities.h
  4. //
  5. //    Contains:    Useful utilities for working with QuickTime movies.
  6. //                All utilities start with the prefix "QTUtils_".
  7. //
  8. //    Written by:    Tim Monroe
  9. //                Based heavily on the DTSQTUtilities package by Apple DTS.
  10. //                This is essentially a subset of that package, revised for cross-platform use.
  11. //
  12. //    Copyright:    ⌐ 1996-1998 by Apple Computer, Inc., all rights reserved.
  13. //
  14. //    Change History (most recent first):
  15. //
  16. //       <1>         09/10/97    rtm        first file
  17. //       
  18. //////////
  19.  
  20. #pragma once
  21.  
  22. // header files
  23. #ifndef __QTUtilities__
  24. #define __QTUtilities__
  25.  
  26. #ifndef __MOVIES__
  27. #include <Movies.h>
  28. #endif
  29.  
  30. #ifndef __GESTALT__
  31. #include <Gestalt.h>
  32. #endif
  33.  
  34. #include <Endian.h>
  35. #include <Script.h>
  36. #include <Printing.h>
  37.  
  38. // constants
  39. // constants used for QTUtils_PrintMoviePICT
  40. enum eQTUPICTPrinting {
  41.     kPrintFrame                = 1, 
  42.     kPrintPoster            = 2
  43. };
  44.  
  45. // constants used for QTUtils_GetMovieFileLoopingInfo
  46. enum {
  47.     kNormalLooping                = 0, 
  48.     kPalindromeLooping            = 1, 
  49.     kNoLooping                    = 2
  50. };
  51.  
  52. #define kQTVideoEffectsMinVers        0x0300        // version of QT that first supports QT video effects
  53. #define kQTFullScreeMinVers            0x0209        // version of QT that first supports full-screen calls
  54.  
  55. // function prototypes
  56.  
  57. Boolean                        QTUtils_IsQuickTimeInstalled (void); 
  58. Boolean                        QTUtils_IsQuickTimeCFMInstalled (void);
  59. long                        QTUtils_GetQTVersion (void);
  60. Boolean                        QTUtils_HasQuickTimeVideoEffects (void);
  61. Boolean                        QTUtils_HasFullScreenSupport (void);
  62. Movie                        QTUtils_GetMovie (FSSpec *theFSSpec, short *theRefNum, short *theResID);
  63. OSErr                        QTUtils_SaveMovie (Movie theMovie);
  64. Boolean                        QTUtils_IsMediaTypeInMovie (Movie theMovie, OSType theMediaType);
  65. Boolean                        QTUtils_MovieHasSoundTrack (Movie theMovie);
  66. MediaHandler                QTUtils_GetSoundMediaHandler (Movie theMovie);
  67. OSErr                        QTUtils_PrintMoviePICT (Movie theMovie, short x, short y, long PICTUsed);
  68. OSErr                        QTUtils_SelectAllMovie (MovieController mc);
  69. ImageDescriptionHandle        QTUtils_MakeSampleDescription (long theEffectType, short theWidth, short theHeight);
  70. OSErr                        QTUtils_AddUserDataTextToMovie (Movie theMovie, char *theText, OSType theType);
  71. OSErr                        QTUtils_AddCopyrightToMovie (Movie theMovie, char *theText);
  72. OSErr                        QTUtils_AddMovieNameToMovie (Movie theMovie, char *theText);
  73. OSErr                        QTUtils_AddMovieInfoToMovie (Movie theMovie, char *theText);
  74. OSErr                        QTUtils_GetMovieFileLoopingInfo (Movie theMovie, long *theLoopInfo);
  75. OSErr                        QTUtils_SetMovieFileLoopingInfo (Movie theMovie, long theLoopInfo);
  76. OSErr                        QTUtils_SetLoopingStateFromFile (Movie theMovie, MovieController theMC);
  77. void                        QTUtils_ConvertFloatToBigEndian (float *theFloat);
  78.  
  79.  
  80.  
  81. #endif    // __QTUtilities__
  82.